package cc.ycws.core.vo;

import java.io.Serializable;

import org.apache.commons.lang3.builder.ReflectionToStringBuilder;

/**
 * 用户中心统一登陆对象 User的简化
 *
 * @author liutao
 */
public class SystemUser implements Serializable {
    private static final long serialVersionUID = -8094604492554763459L;

    private Long id;    //用户ID

    /**
     * 用户编号
     */
    private String userCode;

    /**
     * email地址
     */
    private String email;

    /**
     * 手机号
     */
    private String mobileNo;

    /**
     * 用户名称
     */
    private String userName;

    /**
     * 使用md5(username + original password + salt)加密存储
     */
    private String password;

    /**
     * 加密密码时使用的种子
     */
    private String salt;

    /**
     * 是否是管理员
     */
    private Boolean isAdmin = false;

    /**
     * 逻辑删除flag
     */
    private Boolean isDeleted = Boolean.FALSE;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public String getUserCode() {
        return userCode;
    }

    public void setUserCode(String userCode) {
        this.userCode = userCode;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getMobileNo() {
        return mobileNo;
    }

    public void setMobileNo(String mobileNo) {
        this.mobileNo = mobileNo;
    }

    public String getUserName() {
        return userName;
    }

    public void setUserName(String userName) {
        this.userName = userName;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getSalt() {
        return salt;
    }

    public void setSalt(String salt) {
        this.salt = salt;
    }


    public Boolean getAdmin() {
        return isAdmin;
    }

    public void setAdmin(Boolean admin) {
        isAdmin = admin;
    }

    public Boolean getDeleted() {
        return isDeleted;
    }

    public void setDeleted(Boolean deleted) {
        isDeleted = deleted;
    }

    @Override
    public String toString() {
        return ReflectionToStringBuilder.toString(this);
    }
}